package com.cn.serverline.lineicp.workshopPlan.entity;

import cn.stylefeng.roses.kernel.db.api.pojo.entity.BaseEntity;
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 零组件类型
 *
 * @author 田江余
 * @date 2024年7月29日14:31:22
 */
@TableName("PLAN_SPARE_PARTS_TYPE")
@Data
@EqualsAndHashCode(callSuper = true)
public class SparePartsType extends BaseEntity {

    /**
     * id
     */
    @TableId(value = "ID", type = IdType.ASSIGN_ID)
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    @JsonSerialize(using = ToStringSerializer.class)
    @ChineseDescription("id")
    private Long id;

    /**
     * 类型编号
     */
    @TableField("CODE")
    @ChineseDescription("类型编号")
    private String code;

    /**
     * 类型名称
     */
    @TableField("NAME")
    @ChineseDescription("类型名称")
    private String name;

    /**
     * 是否组件
     */
    @TableField("IS_COMPONENT")
    @ChineseDescription("是否组件")
    private Integer isComponent;

    /**
     *是否主零件
     */
    @TableField("IS_MAIN_PART")
    @ChineseDescription("是否主零件")
    private Integer isMainPart;

    @TableField("REMARK")
    @ChineseDescription("备注")
    private String remark;
}
